<?php

 include_once "libs/Sajax.php";
 include_once "app/servicios.php";
	
	function traerCodigo($nombreServicio,$id) {
		$codigo="";
		$cur_dir = dirname(__FILE__);
		
		$servicio=new servicio();
	    $srv=$servicio->find($id);
		
		$filename=$cur_dir.'/../servicios/'.$nombreServicio.$srv->version.".php";				
		if (file_exists($filename))
		{
			$lineas=file($filename);		
			$start=false;		
			foreach ($lineas as $linea_num => $linea) {
	    		
    		if (!$start&&strpos($linea,$nombreServicio)>0)
	    		{    		
	    		$codigo=$codigo.$linea;
	    		$start=true;    		
	    		}
	    		else
	    		{
	    		if($start)		
	    			{
	    			if($linea=="}?>")
	    				{
	    					$start=false;    		
	    					$codigo=$codigo."}";
	    				}		
	    			else
	    			 	$codigo=$codigo.$linea;   				    			    			
	    			}
	    		}	    		
			}										
			return stripslashes($codigo);
		}
	 	else
			{
			$servicio= $Servicio = new servicio();
			
			$srv=$servicio->find($id);
			$srv->parametros();
			$param = new parametro();
			$param_in = $param->find_by_servicio($srv->id);			
			$param_out = $param->find_returns_by_servicio($srv->id);
			
			$in_params="";
			$out_params="";
			foreach ($param_in as $p)
			{														
					if(strlen($in_params)>0)
					{
						$in_params = $in_params.',$'.$p->nombre;
					}else
					{
						$in_params = '$'.$p->nombre;
					}													
			}
			foreach ($param_out as $p)
			{
					if(strlen($out_params)>0)
					{
						$out_params = $out_params.',$'.$p->nombre;
					}else
					{
						$out_params = '$'.$p->nombre;
					}										
			}																						
			return "function ".$nombreServicio."(".$in_params.") \n{\n \nDevolver(".$out_params.");\n}";		
			}		
	}
	
	sajax_init();
	sajax_export("traerCodigo");
	sajax_handle_client_request();
 
?>
